登入頁面其實和註冊頁面幾乎一樣,只差在firebase的指令不同而已
在切到登入頁面時發先的一個問題(這邊要將註冊頁面的內容做一點修正)。
嘗試重新用一個新帳號註冊會發現會有轉跳的畫面,仔細看了console
發現被執行了兩次,試了各種作法,最後在我在firebase.js
加上了console
,發現他有時候執行,有時候又不執行,在看了文件之後才發現引入的方式有問題!!
這是原先直接找到路徑引入的方式(firebase
是我int
的js
)
import firebase from '../utils/firebase';
改由以下方式,他會每次執行顯示console
import firebase from "firebase/compat/app";
官方文件有提及到這件事情(連結)
用signInWithEmailAndPassword
將信箱與密碼送回去給firebaseu驗證,驗證成功後登入並導回首頁,登入完成~
function onSubmit(){
firebase.auth().signInWithEmailAndPassword(email, password)
.then((userCredential) => {
var user = userCredential.user;
navigate("/")
})
.catch((error) => {
var errorCode = error.code;
var errorMessage = error.message;
});
}
註冊登入做完之後,有想到一個地方要修改,就是header狀態,會員與非會員的下拉選單不一樣,之前是先塞假的true/false值,明天就要把真正的值給帶入。